package com.yuandian.management.socket.entity;

import java.io.Serializable;

/**
 * 响应消息体头部
 *
 * @author: tangqingchun
 * @date: 2019-09-27
 */
public class SocketResponseHead implements Serializable{
	private static final long serialVersionUID = 1L;
	/**
     * 固定值，请求消息为request,响应消息为response
     */
    private String messageType;
    /**
     * 消息ID，格式为：yyyymmddhhMMssSSS+3位随机数
     */
    private String messageId;
    /**
     * 时间戳
     */
    private Long timestamp;
    /**
     * 鉴权信息，取值为：
     * SHA(当前日期yyyymmdd格式+KEY+PASSWORD)
     * 其中KEY=appId+moduleId+operType
     * PASSWORD=自定义的密码，交互双方相同
     */
    private String authInfo;
    /**
     * 系统标识，具体请参看附录：应用标识枚举
     */
    private String appId;
    /**
     * 模块标识，具体请参看附录：模块标识枚举
     */
    private String moduleId;
    /**
     * 操作类型，具体请参看附录：操作类型枚举
     */
    private Integer operType;
	public String getMessageType() {
		return messageType;
	}
	public void setMessageType(String messageType) {
		this.messageType = messageType;
	}
	public String getMessageId() {
		return messageId;
	}
	public void setMessageId(String messageId) {
		this.messageId = messageId;
	}

	public Long getTimestamp() {
		return timestamp;
	}

	public void setTimestamp(Long timestamp) {
		this.timestamp = timestamp;
	}

	public String getAuthInfo() {
		return authInfo;
	}
	public void setAuthInfo(String authInfo) {
		this.authInfo = authInfo;
	}
	public String getAppId() {
		return appId;
	}
	public void setAppId(String appId) {
		this.appId = appId;
	}
	public String getModuleId() {
		return moduleId;
	}
	public void setModuleId(String moduleId) {
		this.moduleId = moduleId;
	}
	public Integer getOperType() {
		return operType;
	}
	public void setOperType(Integer operType) {
		this.operType = operType;
	}
	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "SocketResponseHead [messageType=" + messageType + ", messageId=" + messageId + ", timeStamp="
				+ timestamp + ", authInfo=" + authInfo + ", appId=" + appId + ", moduleId=" + moduleId + ", operType="
				+ operType + "]";
	}
}
